if ( test_and_clear_bit(_PGC_allocated, &page->count_info) )
put_page(page);
- if ( unlikely(!page_is_removable(page)) )
+ if ( unlikely((page->count_info & PGC_count_mask) != 1) )
{
shadow_drop_references(d, page);
/* We'll make this a guest-visible error in future, so take heed! */
- if ( !page_is_removable(page) )
+ if ( (page->count_info & PGC_count_mask) != 1 )
gdprintk(XENLOG_INFO, "Dom%d freeing in-use page %lx "
"(pseudophys %lx): count=%lx type=%lx\n",
d->domain_id, mfn, get_gpfn_from_mfn(mfn),
return rc;
}
-static inline int page_is_removable(struct page_info *page)
-{
- return ((page->count_info & PGC_count_mask) == 1);
-}
-
#define set_machinetophys(_mfn, _pfn) do { } while(0);
#ifdef MEMORY_GUARD
return rc;
}
-static inline int page_is_removable(struct page_info *page)
-{
- return ((page->count_info & PGC_count_mask) == 1);
-}
-
extern void synchronise_pagetables(unsigned long cpu_mask);
/* XXX don't know what this is for */
return rc;
}
-static inline int page_is_removable(struct page_info *page)
-{
- return ((page->count_info & PGC_count_mask) == 1);
-}
-
#define ASSERT_PAGE_IS_TYPE(_p, _t) \
ASSERT(((_p)->u.inuse.type_info & PGT_type_mask) == (_t)); \
ASSERT(((_p)->u.inuse.type_info & PGT_count_mask) != 0)